home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1985 December / 1985-12.d64 / banners 1525 (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  2KB  |  54 lines

  1. 100 poke56,48:poke55,0:clr:cu=53272:gosub520:sys828:poke53281,15:mt$=""
  2. 110 print"[147][144]             banner printer             [146]"
  3. 120 cc=0:print"press a key:":print"u[146]_for upper case and graphics"
  4. 130 print"l[146]_for upper/lower case"
  5. 140 print"c[146]_for custom character set (character   data must be at 12288!)"
  6. 150 getch$:ifch$=""then150
  7. 160 ifch$="u"thench=16384:printchr$(142):goto200
  8. 170 ifch$="l"thench=16384+2048:printchr$(14):goto200
  9. 180 ifch$="c"thenfork=12544to12551:pokek,0:next:ch=12288:gosub510:goto200
  10. 190 goto150
  11. 200 print"[147]what character do you want to make up   the large letters"
  12. 210 gosub610:pp$=mt$
  13. 220 mt$="":print"[147]what is your message  ":gosub610:n$=mt$
  14. 230 print"how tall (1 to 9)";:inputts:ifts<1thents=1
  15. 240 print"how wide (1 to"ts"[157])";:inputws:ifws>tsorws<1thenws=ts
  16. 250 open1,4
  17. 260 forl=1tolen(n$)
  18. 270 a$=mid$(n$,l,1):print"printing[146] "a$:ifa$=" "thengosub480:goto380
  19. 280 q=asc(a$):q=q+(q>63)*64+(q>191)*64+(q=255)*33
  20. 290 i=ch+q*8
  21. 300 forj=7to0step-1
  22. 310 fork=7to0step-1
  23. 320 b=peek(i+k)
  24. 330 ifband2^jthenfort=1tots:pr$=pr$+pp$:nextt:goto350
  25. 340 fort=1tots:pr$=pr$+" ":nextt
  26. 350 nextk
  27. 360 forx=1tows:print#1,chr$(15)spc((72-ts*8)/2)pr$chr$(8):nextx:pr$=""
  28. 370 nextj
  29. 380 nextl
  30. 390 print#1,chr$(8):close1
  31. 400 if(peek(cu)and12)=12thenpokecu,(peek(cu)and240)or4:cc=1
  32. 410 print"[147]press a key:":print"x to exit program":print"r to reprint message"
  33. 420 print"n to enter new message"
  34. 430 gety$:ify$=""then430
  35. 440 ify$="r"thengosub490:print"[147]"n$:goto250
  36. 450 ify$="x"thenopen1,4:print#1,chr$(15):close1:print"[147]":end
  37. 460 ify$="n"then110
  38. 470 goto430
  39. 480 forx=1to8*ws:print#1,chr$(8):next:return
  40. 490 ifcc=1thencc=0:gosub510
  41. 500 return
  42. 510 pokecu,(peek(cu)and240)or12:return
  43. 520 fori=828to887:reada:x=x+a:pokei,a:nexti
  44. 530 ifx<>8638thenprint"error in data statements.":stop
  45. 540 return
  46. 550 data 173,14,220,41,254,141,14,220,169,208
  47. 560 data 133,252,169,64,133,254,165,1,41,251
  48. 570 data 133,1,169,0,133,251,133,253,168,162
  49. 580 data 16,177,251,145,253,200,208,249,230
  50. 590 data 252,230,254,202,208,242,165,1,9,4
  51. 600 data 133,1,173,14,220,9,1,141,14,220,96
  52. 610 poke198,5:poke631,155:poke632,34:poke633,34:poke634,20:poke635,144
  53. 620 inputmt$:return
  54.